
//Original icon style
[class^="icon-"] {
  font-size: 0;
  vertical-align: middle;
  background: url(../images/icons.png) no-repeat;
  display: inline-block;
}
.icon_ {
  display: inline-block;
}
.icon_ .text {
  vertical-align: middle;
  margin-left: 5px;
}

//@usage:
.iconFactory(0,8px,8px,0);
.iconFactory(1,3px,3px,-1);
.iconFactory(2,12px,14px,-2);
.iconFactory(3,20px,19px,-3);

//@public:
.iconFactory(@iconIndex,@iconWidth,@iconHeight,@positionIndex){
  .icon-u0@{iconIndex} {
    height: @iconHeight;
    width:@iconWidth;
    background-position: 0 @positionIndex*20px;
  }
}
